Inline x86 ASM

PureBasic erlaubt das direkte Einfügen von allen x86 Assembler Befehlen (einschließlich MMX- und FPU-Befehlen) in den Sourcecode, so als wäre es ein echter Assembler. Und es bietet noch mehr: Sie können direkt alle Variablen oder Zeiger in den Assembler Schlüsselwörtern benutzen, Sie können beliebige Assembler Befehle auf derselben Zeile verwenden, ... Der Syntax entspricht dem des NAsm, wenn Sie also nach weiteren Informationen zum ASM Syntax suchen, lesen Sie einfach die NAsm Anleitung.

Sie müssen einige Regeln genau beachten, wenn Sie ASM im Basic Code einbinden möchten:

- Die benutzten Variablen oder Zeiger müssen vor ihrer Benutzung in einem Assembler Schlüsselwort deklariert werden.
- Wenn Sie auf eine Sprungmarke verweisen, müssen Sie das Zeichen 'p' vor dem Namen einfügen. Dies erfolgt, weil PureBasic ein 'p' vor einer BASIC Sprungmarke einfügt, um Konflikte mit internen Sprungmarken zu vermeiden.

Beispiel :

MOV ebx,pMyLabel
...
MyLabel:

- Die Fehler in einem ASM Programmteil werden nicht von PureBasic gemeldet, jedoch von NAsm. Überprüfen Sie einfach Ihren Programmcode, wenn ein solcher Fehler auftritt.
- Die verwendbaren Register sind: eax, ebx, edx, esi, edi und ebp. Alle anderen müssen immer reserviert bleiben.

Beispiel :

Inline ASM Beispiel